package com.unibeta.cloudtest.mesher.auth.bean;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;

import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.userdetails.UserDetails;

import com.unibeta.cloudtest.mesher.modules.common.AbstractAuditEntity;

import lombok.Data;

@Data
public class AuthUserDetails<T extends Object> extends AbstractAuditEntity implements UserDetails {

	/**
	 * 
	 */
	private static final long serialVersionUID = 3270920416661056662L;

	String username;
	String password;
	String entityType = "1";
	String tenantId = "default";
	boolean accountNonExpired = true;
	private boolean accountNonLocked = true;
	private boolean credentialsNonExpired = true;
	private boolean enabled = true;
	String token;
	T details;
	Collection<SimpleGrantedAuthority> authorities = new ArrayList<SimpleGrantedAuthority>();
	private Date lastLoginTime;

}
